/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package tests;




import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import static org.junit.Assert.*;
import lispinterpreter.*;

/**
 *
 * @author JuanFer
 */
public class LispListTest {

    public LispListTest() {
    }

    @BeforeClass
    public static void setUpClass() throws Exception {
    }

    @AfterClass
    public static void tearDownClass() throws Exception {
    }

    @Before
    public void setUp() {
    }

    @After
    public void tearDown() {
    }


    /**
     * Test of cAtomVerifier method, of class LispList.
     */
    @Test
    public void testCAtomVerifier() {
        System.out.println("cAtomVerifier");
        LispAtom atomo = new LispAtom("(");
        boolean expResult = true;
        boolean result = atomo.cAtomVerifier();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
    }



    /**
     * Test of isAtom method, of class LispList.
     */
    @Test
    public void testIsAtom() {
        System.out.println("isAtom");
        LispList instance = new LispList();
        boolean expResult = false;
        boolean result = instance.isAtom();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
    }



    /**
     * Test of isParsed method, of class LispList.
     */
    @Test
    public void testIsParsed() {
        System.out.println("isParsed");
        LispList instance = new LispList();
        instance.addElement(new LispAtom("("));
        boolean expResult = false;
        boolean result = instance.isParsed();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
    }

    /**
     * Test of isSimple method, of class LispList.
     */
    @Test
    public void testIsSimple() {
        System.out.println("isSimple");
        LispList instance = new LispList();
        instance.addElement(new LispAtom(false));
        boolean expResult = true;
        boolean result = instance.isSimple();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
    }


    /**
     * Test of removeElement method, of class LispList.
     */
    @Test
    public void testRemoveElement() {
        System.out.println("removeElement");
        int index = 0;
        LispList instance = new LispList();
        instance.addElement(new LispAtom(true));
        instance.removeElement(index);
        // TODO review the generated test code and remove the default call to fail.
        assertTrue(instance.size()==0);
    }

    /**
     * Test of replaceElement method, of class LispList.
     */
    @Test
    public void testReplaceElement() {
        System.out.println("replaceElement");
        int index = 0;
        LispAtom obj = new LispAtom("2");
        LispList instance = new LispList();
        instance.addElement(obj);
        LispList replacement = new LispList();
        instance.replaceElement(index, replacement);
        assertTrue(!instance.isSimple());
        // TODO review the generated test code and remove the default call to fail.
    }


    /**
     * Test of size method, of class LispList.
     */
    @Test
    public void testSize() {
        System.out.println("size");
        LispList instance = new LispList();
        int expResult = 0;
        int result = instance.size();
        assertEquals(expResult, result);
        // TODO review the generated test code and remove the default call to fail.
    }

}